\section{Constraint Satisfaction Problems}
Well known Constraint Satisfaction Problems include
\begin{itemize}
	\item \textbf{Queens problem} Given an nxn chessboard, place n queens on it so that no queen can take
another. (The most common example is made with $n = 8$.)
	\item \textbf{Four color theorem} This theorem states that given any plane separated into regions can be colored
with 4 different colors so that no two adjacent regions have the same color. Given such a plane, color it.
	\item \textbf{Sudoku} The objective is to fill a 9x9 grid so that each column, each row, and each of the nine 3x3
boxes (also called blocks or regions) contains the digits from 1 to 9 only one time each. Given a partially filled
grid, complete it.
	\item \textbf{Linear programs} involve the optimization of a linear objective function, subject to linear equality
and inequality constraints.
	\item \textbf{SAT} Given a boolean formula, find an assignment of its variables so that the formula holds.
\end{itemize}

The popularity and diversity of such problems gave rise to many algorithms to solve them, each somehow specialized in
some category of problems and based on a different approach.